Micron Document




Common Lisp Interface Manager
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
The Common Lisp Interface Manager (CLIM) is a Common Lisp-based programming interface for creating user interfaces, i.e., graphical user interfaces (GUIs). It provides an application programming interface (API) to user interface facilities for the programming language Lisp.cite-ref-1[1] It is a fully object-oriented programming user interface management system,cite-ref-2[2] using the Common Lisp Object System (CLOS) and is based on the mechanism of stream input and output.cite-ref-3[3] There are also facilities for output device independence. It is descended from the GUI system Dynamic Windowscite-ref-4[4] of Symbolics' Lisp machines between 1988 and 1993.

... you can check out Common Lisp Interface Manager (CLIM). A descendant of the Symbolics Lisp machines GUI framework, CLIM is powerful but complex. Although many commercial Common Lisp implementations actually support it, it doesn't seem to have seen a lot of use. But in the past couple years, an open-source implementation of CLIM, McCLIM – now hosted at Common-Lisp.netcite-ref-5[5] – has been picking up steam lately, so we may be on the verge of a CLIM renaissance. – From Practical Common Lispcite-ref-6[6]

The main development was CLIM 2.0, released in 1993. It is free and open source software released under a GNU Library General Public License (LGPL).

CLIM has been designed to be portable across different Common Lisp implementations and different windowing systems. It uses a reflective architecture for its window system interface.cite-ref-7[7] CLIM supports, like Dynamic Windows, so-called Presentations.cite-ref-8[8]cite-ref-9[9]cite-ref-10[10]

CLIM is available for Allegro CL,cite-ref-11[11] LispWorks,cite-ref-12[12] Macintosh Common Lisp, and Symbolics Generacite-ref-13[13]

A free software implementation of CLIM is named McCLIM.cite-ref-14[14] It has several extensions to CLIM and has been used for several applications like Climacs, an Emacs-like editor. It also provides a mouse-sensitive Lisp Listener, a read–eval–print loop (REPL) for Common Lisp.cite-ref-15[15]

Contents


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Applications using CLIM

• BB1 Blackboard Kernel (BBK)cite-ref-16[16]
• CLASP: analyzes data from experiments via graphics, statistical tests, and various data manipulation typescite-ref-17[17]
• CLIB, a prototype interface builder for CLIMcite-ref-18[18]
• Direct Labor Management System (DLMS), manages automobile manufacturing process system at Ford assembly plantscite-ref-19[19]
• DLMAPS, an ontology-based spatial query language and environment, a predecessor of GeoSPARQLcite-ref-20[20]
• GenEd, editor with generic semantics for formal reasoning on visual notationscite-ref-21[21]
• Grasper-CL, graph management systemcite-ref-22[22]
• KONWERK, a domain independent configuration tool
• Mirage, an editor for building gadget-oriented graphical user interfaces.
• Pathway Tools, a comprehensive bioinformatics software package that spans genome data management, systems biology, and omics data analysis.cite-ref-23[23]
• Petri nets, a Petri net editor and simulator
• SENEX, a CLOS/CLIM application for molecular pathology
• SPIKE, scheduling system for the Hubble space telescope observations. Also used for ASTRO-D, an X-Ray observation astronomy mission
• SpyGlass, an analysis environment for viewing packet traces, from BBN.
• VITRA Workbench, an integrated vision and natural language processing system
• VISCO, a visual spatial query languagecite-ref-24[24]
• Climaxima, a Maxima (software) graphical front-end.
• Tangram, a Tangram Puzzle Solver capable of solving arbitrary geometric tiling problems.

References

cite-note-11. "CLIM 2 Specification: Part I: Overview and Conventions". Gilbert Baumann. Retrieved 2019-08-25.
cite-note-22. citerefm-llerMöller, Ralf. "User Interface Management Systems: The CLIM Perspective". CiteSeerX 10.1.1.54.6663. {{cite journal}}: Cite journal requires |journal= (help)
cite-note-33. "A Guided Tour of CLIM, Common Lisp Interface Manager" (PDF).
cite-note-44. "Programming the User Interface, Genera 8.3" (PDF). Bitsavers. Symbolics, Inc.
cite-note-55. "Common-Lisp.net".
cite-note-66. citerefseibelSeibel, Peter. "Conclusion: What's Next?". Practical Common Lisp.
cite-note-77. citerefraoRao, Ramana. "Implementation Reflection in Silica" (PDF). Springer: Extra Materials. Xerox PARC.
cite-note-88. citerefc-ciccarelli1984C., Eugene; Ciccarelli, IV (1984). "Presentation Based User Interfaces, MIT Technical Report: AITR-794" (PDF).
cite-note-99. citerefzdybelgreenfeldyonkeZdybel, Frank; Greenfeld, Norton R.; Yonke, Martin D. "An information presentation system" (PDF).
cite-note-1010. citerefmoore2008Moore, Timothy (2008). "An Implementation of CLIM Presentation Types" (PDF).
cite-note-1111. "CLIM 2 User Guide, version 2.2.2, Allegro Common Lisp 9.0" (PDF). Franz, Inc.
cite-note-1212. "Common Lisp Interface Manager User Guide, version 2.0, LIspWorks 7.0 Manual". LispWorks.
cite-note-1313. "Common Lisp Interface Manager CLIM, Release 2.0, Symbolics Genera 8.3" (PDF). Bitsavers. Symbolics.
cite-note-1414. citerefstrandhmoore2002Strandh, Robert; Moore, Timothy (August 17, 2002). "A Free Implementation of CLIM" (PDF). Retrieved 2019-08-25.
cite-note-1515. "Climacs: An Emacs-like editor in Common Lisp". Common-lisp.net. Retrieved 2019-08-25.
cite-note-1616. citerefbrownston1995Brownston, Lee (November 1995). "BBK Manual". Knowledge Systems, AI Laboratory. Stanford University. Retrieved 2019-08-27.
cite-note-1717. "CLASP" (PDF). School of Information. The University of Arizona. Retrieved 2019-08-27.
cite-note-1818. citerefhessek-niglogiherder1993Hesse, Jan; König, Rainer; Logi, Filippo; Herder, Jens (August 1993). "A prototype of an interface builder for the Common Lisp Interface Manager – CLIB". ACM SIGPLAN Notices. 28 (8). New York, New York, United States: Association for Computing Machinery: 19–28. doi:10.1145/163114.163116. S2CID 7329400.
cite-note-1919. citerefrychtyckyj1999Rychtyckyj, Nestor (1999). "DLMS: Ten Years of AI for Vehicle Assembly Process Planning". IAAI-99 Proceedings. Association for the Advancement of Artificial Intelligence: 821–828. ISBN 978-0-262-51106-3. Retrieved 2019-09-03.
cite-note-2020. citerefwesselm-ller2009Wessel, Michael; Möller, Ralf (March 2009). "Flexible software architectures for ontology-based information systems". Journal of Applied Logic. 7 (1): 75–99. doi:10.1016/j.jal.2007.07.006.
cite-note-2121. citerefhaarslevwesselHaarslev, Volker; Wessel, Michael. "GenEd – An Editor with Generic Semantics for Formal Reasoning about Visual Notations". Proceedings, 12th IEEE Symposium on Visual Languages. Boulder, Colorado, USA: IEEE Press: September 3–6, 1996. Retrieved 2019-09-03.
cite-note-2222. citerefkarplowrancestratwilkins1993Karp, Peter D.; Lowrance, John D.; Strat, Thomas M.; Wilkins, David E. (20 January 1993). "The Grasper-CL Graph Management System" (PDF). SRI International. Retrieved 2019-09-06.
cite-note-2323. citerefkarpmidfordbillingtonkothari2021Karp, Peter D; Midford, Peter E; Billington, Richard; Kothari, Anamika; Krummenacker, Markus; Latendresse, Mario; Ong, Wai Kit; Subhraveti, Pallavi; Caspi, Ron; Fulcher, Carol; Keseler, Ingrid M (2021-01-18). "Pathway Tools version 23.0 update: software for pathway/genome informatics and systems biology". Briefings in Bioinformatics. 22 (1): 109–126. doi:10.1093/bib/bbz104. ISSN 1467-5463. PMC 8453236. PMID 31813964.
cite-note-2424. citerefwesselhaarslev1998Wessel, Michael; Haarslev, Volker (1998). "VISCO: Brining Visual Spatial Querying to Reality". Proceedings, 14th IEEE Symposium on Visual Languages. Nova Scotia, Canada: IEEE Press: September 1–4, 1998. CiteSeerX 10.1.1.52.2080.

External links

• Official website, McCLIM
• CLIM 2.0 Specification as multiple HTML pages; (McCLIM tarballs contain the specification's TeX sources)